Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make browse_rsc() respect cache #1814

Merged
merged 4 commits into from
May 31, 2024

Conversation

amylizzle
Copy link
Collaborator

For BYOND, calling browse_rsc() should be basically free if the resource already exists on the client. For OD, we were sending the whole file every time. This was very bad for goonstation's performance when a client joined, because it would basically send 40mb of crap every time and hang the client while it was doing so.

Note that browse() is supposed to block until browse_rsc() is complete, while output() is not (according to searches of the BYOND discord).

It's hard to test how much impact this will have locally, but from my testing it should probably shave off like 60 seconds from subsequent joins. Now we just need to sort out the shedload of appearances that get sent.

@boring-cyborg boring-cyborg bot added Client Involves the OpenDream client Runtime Involves the OpenDream server/runtime labels May 27, 2024
@wixoaGit wixoaGit merged commit 916f365 into OpenDreamProject:master May 31, 2024
9 checks passed
@amylizzle amylizzle deleted the browse_rsc_rework branch May 31, 2024 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Client Involves the OpenDream client Runtime Involves the OpenDream server/runtime size/L
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants